Typically, large distributed applications are executed and managed by an application platform, which handles multiple applications. The application platform itself is installed in a distributed manner on the computing nodes that are available for running the applications and all of them run on top of a network. Application platforms are typically provided by Information Technology (IT) companies (e.g., Cloud providers), while the network is typically provided (and managed) by telecom operators. The network itself has diverse parts, e.g., the access network, which refers to the part from users/subscribers to the telecom operator's “central office”, and the core network, which refers to the core networking services and the interne access. The scope and the technologies of these different parts are also very different.
Due to these considerations, there are typically three (or more) controllers, which belong to different domains and have no interaction with each other, although each controller usually has access to some information from the other layers (e.g., an application platform controller can get knowledge about the capacity of network links, etc.). The scope and the control parameters of each controller vary from system to system, but in general the application platform involves the control of deployment options and placement decisions of application components on the IT infrastructure. The core network involves the control of the composition and deployment of network service chains as well as the assignment of IT and network resources to domains and applications. The access network involves the control of network channels (e.g., radio) and parameters of networking equipment such as base stations in mobile networks or gateways in fixed networks.
Known approaches for application and/or network control either focus on how to enhance specific techniques of specific controllers, or suggest new architectures and technologies for connecting different controllers or modules of different layers. For example, D. King, A. Farrel, “A PCE-Based Architecture for Application-Based Network Operations”, IETF RFC 7491, Mar. 2015 describe an Application-based Network Orchestration (ABNO), and R. Muũoz et al., “Experimental assessment of ABNO-based network orchestration of end-to-end multi-layer (OPS/OCS) provisioning across SDN/OpenFlow and GMPLS/PCE control domains,” The European Conference on Optical Communication (ECOC), Cannes, pp. 1-3, 2014 describe solutions built on top of it, that connect part of the core network layer to other layers in order to optimize network service design and configuration in some aspects (which is one of the techniques of the core network controller). U.S. Pat. No. 7,197,546 B1 describes an architecture of controllers for cooperatively forming a network design and configuration system.